package com.rabbit.service;

import com.github.pagehelper.PageInfo;
import com.rabbit.db.entity.OperLog;
import com.rabbit.vo.req.OperLogReq;
import com.rabbit.vo.res.OperLogDetailRes;
import com.rabbit.vo.res.OperLogRes;

/**
 * <h1>操作日志业务接口</h1>
 *
 * @author zjw
 * @date 2022/1/21 22:17
 */
public interface OperLogService {

    /**
     * 操作日志列表查询
     *
     * @param operLogReq 查询条件封装
     * @return PageInfo 分页对象
     */
    PageInfo<OperLogRes> queryOperLogList(OperLogReq operLogReq);

    /**
     * 清空操作日志
     */
    void truncateOperLog();

    /**
     * 批量删除操作日志
     *
     * @param operLogReq 删除请求参数封装
     * @return Integer 删除的记录数
     */
    Integer batchDelete(OperLogReq operLogReq);

    /**
     * 查询操作日志详情
     *
     * @param operId 操作日志编号
     * @return OperLogDetailRes 操作日志详情
     */
    OperLogDetailRes queryDetail(Long operId);
}
